Considerable work has been done over the years to save power consumed by disk drives in portable computers. The power consumed by a disk drive in a portable computer substantially limits the duration of time that the portable computer can be operated from an internal battery. A common solution to this problem has been to “spin down” the disk drive when the disk drive has not been accessed for a certain period of time. A more sophisticated solution, known as adaptive power management, is to provide the disk drive with additional low-power modes between the “active” and “sleep” modes, and to change dynamically inactivity thresholds for transitioning to the low-power modes based on user behavior as indicated by a history of disk access.
Recently there has been an increasing desire to reduce the power consumed by disk storage in data centers and server farms. The power consumed by the disk storage has been about one quarter or more of the total power consumption by the data center or server farm. In addition to the cost of the electricity for powering the disk drives, there is a cost of electricity and equipment for cooling the data facility, and a reduction in the reliability and lifetime of the disk drives due to operation at increased temperature. More recently there has been a concern of power shortages in densely populated areas such as New York City, and a strong desire to avoid power shortages via energy conservation for a cleaner environment.
Studies of power management for conventional multiple-disk storage systems have indicated that the high volume of activity in such systems restricts the potential for energy savings of the adaptive power management techniques because the average idle periods of the disks are too small to justify the cost of spinning the disks up and down. However, the adaptive power management techniques have been proposed for hierarchical storage systems in which idle disks replace infrequently-accessed tape storage. Researchers have also begun to investigate power-aware storage cache management techniques for increasing the idle periods of disks in order to justify spin-up costs. These investigations show that power cycling must be done in an intelligent fashion or else it may actually increase power consumption rather than reduce it.
A conventional hierarchical storage system has a file system interface to a disk storage system backed by a tape library serving as a final repository for data. In a hierarchical storage architecture known as a Massive Arrays of Idle Disks (MAID), the tape library is replaced with passive disk drives. A relatively small power envelope is obtained by a combination of power management of the passive disk drives and the use of a cache of active disk drives or data migration from active disk drives to the passive disk drives. See Colarelli et al., “The Case for Massive Arrays of Idle Disks (MAID),” USENIX Conference on File and Storage Technologies (FAST), January 2002, Monterey, Calif.
Power-aware storage cache management techniques are reported in Zhu et al., “Reducing Energy Consumption of Disk Storage Using Power-Aware Cache Management,” 10th International Symposium on High Performance Computer Architecture, IEEE Computer Society, 2004, and Zhu et al., “PB-LRU: A Self-Tuning Power Aware Storage Cache Replacement Algorithm for Conserving Disk Energy,” ICS'04, Jun. 26-Jul. 1, 2004, Saint-Malo, France, ACM. For writes, if a disk is inactive, the write can be made to a persistent log, and written from the log to disk when the disk becomes active due to a read. The cache replacement algorithm should selectively keep blocks from “inactive” disks in the storage cache longer and thus extend the idle period lengths of those disks. One method of doing this is to measure disk activity and periodically update a classification of disk activity. Another method is to divide the entire cache into separate partitions, one for each disk, and manage each partition separately.